import CONSTS from "./CONSTS";
import Storage from "./h5plus/Storage";
/**
 * 缓存
 *
 * @export
 * @class Cache
 */
export default class Cache {

  /**
   * 设置用户缓存信息
   *
   * @static
   * @param {any} [userInfo={}]
   *
   * @memberOf Cache
   */
  static setUserInfo(userInfo = {}) {
    Storage.setItem(CONSTS.CACHES.USERINFO, userInfo);
  }

  /**
   * 获取用户缓存信息
   *
   * @static
   * @returns
   *
   * @memberOf Cache
   */
  static getUserInfo() {
    return Storage.getItem(CONSTS.CACHES.USERINFO);
  }
  /**
   * 获取用户ID的缓存
   *
   * @static
   * @returns
   *
   * @memberOf Cache
   */
  static getUserId() {
    let user = Storage.getItem(CONSTS.CACHES.USERINFO);

    return user && user.item.userId ? user.item.userId : '';
  }

  /**
   * 设置当前位置信息
   *
   * @static
   * @param {any} location
   * @returns
   *
   * @memberOf Cache
   */
  static setLocation(location) {
    return Storage.setItem(CONSTS.CACHES.LOCATION, location);
  }

  /**
   * 获取当前位置信息
   *
   * @static
   * @returns
   *
   * @memberOf Cache
   */
  static getLocation() {
    return Storage.getItem(CONSTS.CACHES.LOCATION);
  }

  /**
   * 设置附近停车场所
   *
   * @static
   * @param {any} nearbyStopCars
   * @returns
   *
   * @memberOf Cache
   */
  static setNearbyStopCar(nearbyStopCars) {
    return Storage.setItem(CONSTS.CACHES.NEARBYSTOPCAR, nearbyStopCars);
  }

  /**
   * 获取附近停车场所
   *
   * @static
   * @returns
   *
   * @memberOf Cache
   */
  static getNearbyStopCar() {
    return Storage.getItem(CONSTS.CACHES.NEARBYSTOPCAR);
  }

  /**
   * 设置默认车辆
   *
   * @static
   * @param {any} defaultCar
   * @returns
   *
   * @memberOf Cache
   */
  static setDefaultCar(defaultCar) {
    return Storage.setItem(CONSTS.CACHES.DEFAULTCAR, defaultCar);
  }

  /**
   * 获取默认车辆
   *
   * @static
   * @returns
   *
   * @memberOf Cache
   */
  static getDefaultCar() {
    return Storage.getItem(CONSTS.CACHES.DEFAULTCAR);
  }

  /**
   * 设置轮播图
   *
   * @static
   * @param {any} banners
   * @returns
   *
   * @memberOf Cache
   */
  static setBanner(banners) {
    return Storage.setItem(CONSTS.CACHES.BANNER, banners);
  }

  /**
   * 获取轮播图
   *
   * @static
   * @returns
   *
   * @memberOf Cache
   */
  static getBanner() {
    return Storage.getItem(CONSTS.CACHES.BANNER);
  }

  /**
   * 设置停车记录
   *
   * @static
   * @param {any} records
   * @returns
   *
   * @memberOf Cache
   */
  static setStopCarState(records) {
    return Storage.setItem(CONSTS.CACHES.STOPCARSTATE, records);
  }

  /**
   * 获取停车记录
   *
   * @static
   * @returns
   *
   * @memberOf Cache
   */
  static getStopCarState() {
    return Storage.getItem(CONSTS.CACHES.STOPCARSTATE);
  }

  /**
   * 获取缓存的长度
   *
   * @static
   * @returns
   *
   * @memberOf Cache
   */
  static getLength() {
    return Storage.getLength();
  }
  //添加
  static setCache(cache_key,cache_val){
    return Storage.setItem(cache_key, cache_val);
  }
  //获取
  static getCache(cache_key){
    return Storage.getItem(cache_key);
  }
  //移除
  static removeCache(cache_key){
  		Storage.removeItem(cache_key);
  }
  
  
}
